home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1996 October: Mac OS SDK / Dev.CD Oct 96 SDK / Dev.CD Oct 96 SDK2.toast / Development Kits (Disc 2) / OpenDoc Development Framework / ODF & Cyberdog / ODFCyberLibrary / Sources / FWCyPart.h < prev    next >
Encoding:
Text File  |  1996-08-16  |  2.4 KB  |  55 lines  |  [TEXT/MPS ]

  1. //-----------------------------------------------------------------------------
  2. //    FWCyPart.h
  3. //    Support for FW_OCyberPartExtension. Wraps it so that the developer
  4. //    never needs to deal with SOM. Also implements basic recipes.
  5. //    
  6. //    Copyright (c) 1995 - 1996 by Apple Computer, Inc., all rights reserved.
  7. //-----------------------------------------------------------------------------
  8.  
  9. #ifndef _FW_MCyberPart_
  10. #define _FW_MCyberPart_
  11.  
  12. #include "SLCyPart.h"
  13. #include "SLCyPart.xh"
  14. #include <CyberItem.xh>
  15. class FW_CPart;
  16. class FW_CEventDispatcher;
  17.  
  18. typedef FW_TAcquiredODRefCntObject<ODF_FW_OCyberPartExtension> FW_CAcquiredODFCyberPartExtension;
  19.  
  20. class FW_MCyberPart: public FW_SCyberPartExtensionCallbacks {
  21. public:
  22.                         FW_MCyberPart (FW_CPart* part);
  23.                         ~FW_MCyberPart ();
  24.     void                 Initialize (Environment* ev);
  25.     
  26.     // API
  27.     CyberItem*             GetCyberItem();
  28.     CyberSession*         GetCyberSession();
  29.     CyberPartExtension* AcquireCyberExtension();
  30.     FW_CEventDispatcher* MakeEventDispatcher (Environment *ev);
  31.     
  32.     // CyberPartExtension <CyberPartExtension.idl>
  33.     enum { FW_kHandledCyberCommand = true, FW_kPassCyberCommand = false };
  34.     virtual void         HandleOpenCyberItem (Environment* ev, CyberItem* item, ODPart* openerPart, ParameterSet* parameters);
  35.     virtual void         DoSetCyberItem         (Environment* ev, CyberItem* newItem, ParameterSet* parameters);
  36.     virtual ODBoolean     DoCanShowCyberItem     (Environment* ev, CyberItem* item);
  37.     virtual void         DoShowCyberItem     (Environment* ev, CyberItem* item);
  38.     virtual ODWindow*     DoGetCyberItemWindow (Environment* ev, CyberItem* item);
  39.     virtual ODBoolean     DoIsCyberItemSelected (Environment* ev, ODFrame* frame);
  40.     virtual void         DoAcquireSelectedCyberItems (Environment* ev, ODFrame* frame, CyberItemList* items);
  41.     virtual ODBoolean     DoIsURLSelected     (Environment* ev, ODFrame* frame);
  42.     virtual void         DoGetSelectedURL     (Environment* ev, ODFrame* frame, FW_CString & url);
  43.     virtual ODBoolean     HandleCyberCommand     (Environment* ev, long commandSuite, long command, ODFrame* frame, somToken parameters);
  44. private:
  45.     static ODExtension* CreateCyberExtension (Environment* ev, FW_CPart *part, const char* name, void* self);
  46.     FW_CPart*             fPart;
  47.     // Once the extension is created, we will acquire it and never let go.
  48.     // This is our only way to communicate with Cyberdog.
  49.     FW_CAcquiredODFCyberPartExtension fExtension;
  50. //    ODF_FW_OCyberPartExtension* fExtension;
  51. };
  52.  
  53. #endif // _FW_MCyberPart_
  54.  
  55.